Document routing is important to the day-to-day operations of a content management system. Without the document routing capability, a content management system would merely become a document archival system. Document routing is similar to workflow. As an example, a claim is submitted to an insurance company for an auto accident. Most likely, finite stages or routings are required to obtain the necessary approvals for paying the insurance claim, depending on the type of claim or damage incurred. Document routing must be capable of identifying a sequence of finite steps through which the document is routed.
An important distinction between current workflow systems and document routing is that document routing provides added functionality, whereas current workflow systems require an interface between the server and the API (application programming interface) that routes the workflow documents. This interface layer, C API, is typically written in C, and allows users to use the server. The drawback to this latter approach is that two interfaces are required: one at the server layer and the other at the middle tier layer. The middle tier layer is the object-oriented application programming interface, or OO API in Java or C++. Because more interfaces are added to the server, processing time is increased and server resources are consumed.
To minimize processing time and maximize server resources, a document routing system is needed that is build on top of the server without an intermediate interface layer. The need for such a system has heretofore remained unsatisfied.